(DATA  a)
(FUNCTION  addThem  [(int d) (int e)]
  (BB 2
    (OPER 3 Func_Entry []  [])
  )
  (BB 3
    (OPER 4 Add_I [(r 5)]  [(r 1)(r 2)])
    (OPER 5 Mov [(r 4)]  [(r 5)])
    (OPER 6 Mov [(m RetReg)]  [(r 4)])
    (OPER 7 Jmp []  [(bb 1)])
  )
  (BB 1
    (OPER 1 Func_Exit []  [])
    (OPER 2 Return []  [(m RetReg)])
  )
)
(FUNCTION  putDigit  [(int s)]
  (BB 2
    (OPER 3 Func_Entry []  [])
  )
  (BB 3
    (OPER 4 Mov [(r 4)]  [(i 48)])
    (OPER 5 Add_I [(r 3)]  [(r 4)(r 1)])
    (OPER 6 Pass []  [(r 3)])
    (OPER 7 JSR []  [(s putchar)])
    (OPER 8 Mov [(r 5)]  [(m RetReg)])
  )
  (BB 1
    (OPER 1 Func_Exit []  [])
    (OPER 2 Return []  [(m RetReg)])
  )
)
(FUNCTION  printInt  [(int r)]
  (BB 2
    (OPER 3 Func_Entry []  [])
  )
  (BB 3
    (OPER 4 Mov [(r 5)]  [(i 0)])
    (OPER 5 Mov [(r 4)]  [(r 5)])
    (OPER 7 Mov [(r 7)]  [(i 10000)])
    (OPER 8 GTE [(r 6)]  [(r 1)(r 7)])
    (OPER 6 BEQ []  [(r 6)(i 0)(bb 5)])
  )
  (BB 4
    (OPER 9 Mov [(r 9)]  [(i 45)])
    (OPER 10 Pass []  [(r 9)])
    (OPER 11 JSR []  [(s putchar)])
    (OPER 12 Mov [(r 10)]  [(m RetReg)])
    (OPER 13 Mov [(r 11)]  [(i 1)])
    (OPER 14 Pass []  [(r 11)])
    (OPER 15 JSR []  [(s putDigit)])
    (OPER 16 Mov [(r 12)]  [(m RetReg)])
    (OPER 17 Jmp []  [(bb 1)])
  )
  (BB 6
  )
  (BB 1
    (OPER 1 Func_Exit []  [])
    (OPER 2 Return []  [(m RetReg)])
  )
  (BB 10
    (OPER 49 Mov [(r 35)]  [(i 1)])
    (OPER 50 EQ [(r 34)]  [(r 4)(r 35)])
    (OPER 48 BEQ []  [(r 34)(i 0)(bb 13)])
  )
  (BB 12
    (OPER 51 Mov [(r 37)]  [(i 0)])
    (OPER 52 Pass []  [(r 37)])
    (OPER 53 JSR []  [(s putDigit)])
    (OPER 54 Mov [(r 38)]  [(m RetReg)])
  )
  (BB 13
    (OPER 55 Jmp []  [(bb 11)])
  )
  (BB 15
    (OPER 70 Mov [(r 49)]  [(i 1)])
    (OPER 71 EQ [(r 48)]  [(r 4)(r 49)])
    (OPER 69 BEQ []  [(r 48)(i 0)(bb 18)])
  )
  (BB 17
    (OPER 72 Mov [(r 51)]  [(i 0)])
    (OPER 73 Pass []  [(r 51)])
    (OPER 74 JSR []  [(s putDigit)])
    (OPER 75 Mov [(r 52)]  [(m RetReg)])
  )
  (BB 18
    (OPER 76 Jmp []  [(bb 16)])
  )
  (BB 5
    (OPER 19 Mov [(r 15)]  [(i 1000)])
    (OPER 20 GTE [(r 14)]  [(r 1)(r 15)])
    (OPER 18 BEQ []  [(r 14)(i 0)(bb 8)])
  )
  (BB 7
    (OPER 21 Mov [(r 18)]  [(i 1000)])
    (OPER 22 Div_I [(r 17)]  [(r 1)(r 18)])
    (OPER 23 Mov [(r 3)]  [(r 17)])
    (OPER 24 Pass []  [(r 3)])
    (OPER 25 JSR []  [(s putDigit)])
    (OPER 26 Mov [(r 19)]  [(m RetReg)])
    (OPER 27 Mov [(r 22)]  [(i 1000)])
    (OPER 28 Mul_I [(r 21)]  [(r 3)(r 22)])
    (OPER 29 Sub_I [(r 20)]  [(r 1)(r 21)])
    (OPER 30 Mov [(r 1)]  [(r 20)])
    (OPER 31 Mov [(r 23)]  [(i 1)])
    (OPER 32 Mov [(r 4)]  [(r 23)])
  )
  (BB 8
    (OPER 34 Mov [(r 25)]  [(i 100)])
    (OPER 35 GTE [(r 24)]  [(r 1)(r 25)])
    (OPER 33 BEQ []  [(r 24)(i 0)(bb 10)])
  )
  (BB 9
    (OPER 36 Mov [(r 28)]  [(i 100)])
    (OPER 37 Div_I [(r 27)]  [(r 1)(r 28)])
    (OPER 38 Mov [(r 3)]  [(r 27)])
    (OPER 39 Pass []  [(r 3)])
    (OPER 40 JSR []  [(s putDigit)])
    (OPER 41 Mov [(r 29)]  [(m RetReg)])
    (OPER 42 Mov [(r 32)]  [(i 100)])
    (OPER 43 Mul_I [(r 31)]  [(r 3)(r 32)])
    (OPER 44 Sub_I [(r 30)]  [(r 1)(r 31)])
    (OPER 45 Mov [(r 1)]  [(r 30)])
    (OPER 46 Mov [(r 33)]  [(i 1)])
    (OPER 47 Mov [(r 4)]  [(r 33)])
  )
  (BB 11
    (OPER 57 Mov [(r 40)]  [(i 10)])
    (OPER 58 GTE [(r 39)]  [(r 1)(r 40)])
    (OPER 56 BEQ []  [(r 39)(i 0)(bb 15)])
  )
  (BB 14
    (OPER 59 Mov [(r 43)]  [(i 10)])
    (OPER 60 Div_I [(r 42)]  [(r 1)(r 43)])
    (OPER 61 Mov [(r 3)]  [(r 42)])
    (OPER 62 Pass []  [(r 3)])
    (OPER 63 JSR []  [(s putDigit)])
    (OPER 64 Mov [(r 44)]  [(m RetReg)])
    (OPER 65 Mov [(r 47)]  [(i 10)])
    (OPER 66 Mul_I [(r 46)]  [(r 3)(r 47)])
    (OPER 67 Sub_I [(r 45)]  [(r 1)(r 46)])
    (OPER 68 Mov [(r 1)]  [(r 45)])
  )
  (BB 16
    (OPER 77 Pass []  [(r 1)])
    (OPER 78 JSR []  [(s putDigit)])
    (OPER 79 Mov [(r 53)]  [(m RetReg)])
    (OPER 80 Jmp []  [(bb 6)])
  )
)
(FUNCTION  main  []
  (BB 2
    (OPER 3 Func_Entry []  [])
  )
  (BB 3
    (OPER 4 Mov [(r 7)]  [(i 5)])
    (OPER 5 Mov [(r 3)]  [(r 7)])
    (OPER 6 Mov [(r 2)]  [(r 7)])
    (OPER 8 Mov [(r 9)]  [(i 5)])
    (OPER 9 EQ [(r 8)]  [(r 2)(r 9)])
    (OPER 7 BEQ []  [(r 8)(i 0)(bb 5)])
  )
  (BB 4
    (OPER 10 Mov [(r 11)]  [(i 3)])
    (OPER 11 Store []  [(r 11)(s a)(i 0)])
  )
  (BB 6
    (OPER 15 Mov [(r 14)]  [(i 0)])
    (OPER 16 Mov [(r 4)]  [(r 14)])
    (OPER 17 Mov [(r 15)]  [(i 1)])
    (OPER 18 Mov [(r 6)]  [(r 15)])
    (OPER 19 Mov [(r 17)]  [(i 8)])
    (OPER 20 LTE [(r 16)]  [(r 6)(r 17)])
    (OPER 21 BEQ []  [(r 16)(i 0)(bb 8)])
  )
  (BB 7
    (OPER 22 Add_I [(r 19)]  [(r 4)(r 6)])
    (OPER 23 Mov [(r 4)]  [(r 19)])
    (OPER 24 Mov [(r 21)]  [(i 1)])
    (OPER 25 Add_I [(r 20)]  [(r 6)(r 21)])
    (OPER 26 Mov [(r 6)]  [(r 20)])
    (OPER 27 Mov [(r 23)]  [(i 8)])
    (OPER 28 LTE [(r 22)]  [(r 6)(r 23)])
    (OPER 29 BNE []  [(r 22)(i 0)(bb 7)])
  )
  (BB 8
    (OPER 30 Mov [(r 25)]  [(i 3)])
    (OPER 31 Div_I [(r 24)]  [(r 4)(r 25)])
    (OPER 32 Mov [(r 5)]  [(r 24)])
    (OPER 33 Mov [(r 27)]  [(i 4)])
    (OPER 34 Mul_I [(r 26)]  [(r 5)(r 27)])
    (OPER 35 Mov [(r 4)]  [(r 26)])
    (OPER 36 Load [(r 28)]  [(s a)])
    (OPER 37 Pass []  [(r 28)])
    (OPER 38 Pass []  [(r 2)])
    (OPER 39 JSR []  [(s addThem)])
    (OPER 40 Mov [(r 29)]  [(m RetReg)])
    (OPER 41 Mov [(r 3)]  [(r 29)])
    (OPER 42 Mov [(r 30)]  [(i 56)])
    (OPER 43 Pass []  [(r 30)])
    (OPER 44 JSR []  [(s putchar)])
    (OPER 45 Mov [(r 31)]  [(m RetReg)])
    (OPER 46 Mov [(r 32)]  [(i 61)])
    (OPER 47 Pass []  [(r 32)])
    (OPER 48 JSR []  [(s putchar)])
    (OPER 49 Mov [(r 33)]  [(m RetReg)])
    (OPER 50 Add_I [(r 34)]  [(r 3)(r 4)])
    (OPER 51 Pass []  [(r 34)])
    (OPER 52 JSR []  [(s putchar)])
    (OPER 53 Mov [(r 35)]  [(m RetReg)])
    (OPER 54 Mov [(r 36)]  [(i 10)])
    (OPER 55 Pass []  [(r 36)])
    (OPER 56 JSR []  [(s putchar)])
    (OPER 57 Mov [(r 37)]  [(m RetReg)])
    (OPER 58 Mov [(r 38)]  [(i 0)])
    (OPER 59 Mov [(r 6)]  [(r 38)])
    (OPER 60 Mov [(r 40)]  [(i 10)])
    (OPER 61 LT [(r 39)]  [(r 6)(r 40)])
    (OPER 62 BEQ []  [(r 39)(i 0)(bb 10)])
  )
  (BB 9
    (OPER 63 Mov [(r 43)]  [(i 48)])
    (OPER 64 Add_I [(r 42)]  [(r 43)(r 6)])
    (OPER 65 Pass []  [(r 42)])
    (OPER 66 JSR []  [(s putchar)])
    (OPER 67 Mov [(r 44)]  [(m RetReg)])
    (OPER 68 Mov [(r 46)]  [(i 1)])
    (OPER 69 Add_I [(r 45)]  [(r 6)(r 46)])
    (OPER 70 Mov [(r 6)]  [(r 45)])
    (OPER 71 Mov [(r 48)]  [(i 10)])
    (OPER 72 LT [(r 47)]  [(r 6)(r 48)])
    (OPER 73 BNE []  [(r 47)(i 0)(bb 9)])
  )
  (BB 10
    (OPER 74 Mov [(r 49)]  [(i 10)])
    (OPER 75 Pass []  [(r 49)])
    (OPER 76 JSR []  [(s putchar)])
    (OPER 77 Mov [(r 50)]  [(m RetReg)])
    (OPER 78 Mov [(r 51)]  [(i 67)])
    (OPER 79 Pass []  [(r 51)])
    (OPER 80 JSR []  [(s putchar)])
    (OPER 81 Mov [(r 52)]  [(m RetReg)])
    (OPER 82 Mov [(r 53)]  [(i 83)])
    (OPER 83 Pass []  [(r 53)])
    (OPER 84 JSR []  [(s putchar)])
    (OPER 85 Mov [(r 54)]  [(m RetReg)])
    (OPER 86 Mov [(r 55)]  [(i 3510)])
    (OPER 87 Pass []  [(r 55)])
    (OPER 88 JSR []  [(s printInt)])
    (OPER 89 Mov [(r 56)]  [(m RetReg)])
    (OPER 90 Mov [(r 57)]  [(i 10)])
    (OPER 91 Pass []  [(r 57)])
    (OPER 92 JSR []  [(s putchar)])
    (OPER 93 Mov [(r 58)]  [(m RetReg)])
    (OPER 94 Mov [(r 59)]  [(i 0)])
    (OPER 95 Mov [(r 2)]  [(r 59)])
    (OPER 96 Mov [(r 60)]  [(i 1)])
    (OPER 97 Mov [(r 3)]  [(r 60)])
    (OPER 98 Mov [(r 61)]  [(i 1)])
    (OPER 99 Mov [(r 4)]  [(r 61)])
    (OPER 100 Mov [(r 62)]  [(i 0)])
    (OPER 101 Mov [(r 5)]  [(r 62)])
    (OPER 102 Mov [(r 63)]  [(i 0)])
    (OPER 103 Mov [(r 6)]  [(r 63)])
    (OPER 105 Mov [(r 65)]  [(i 0)])
    (OPER 106 EQ [(r 64)]  [(r 2)(r 65)])
    (OPER 104 BEQ []  [(r 64)(i 0)(bb 12)])
  )
  (BB 11
    (OPER 108 Mov [(r 68)]  [(i 0)])
    (OPER 109 EQ [(r 67)]  [(r 3)(r 68)])
    (OPER 107 BEQ []  [(r 67)(i 0)(bb 15)])
  )
  (BB 14
    (OPER 110 Mov [(r 70)]  [(i 1)])
    (OPER 111 Mov [(r 6)]  [(r 70)])
  )
  (BB 16
  )
  (BB 13
    (OPER 131 Mov [(r 84)]  [(i 10)])
    (OPER 132 EQ [(r 83)]  [(r 6)(r 84)])
    (OPER 130 BEQ []  [(r 83)(i 0)(bb 24)])
  )
  (BB 23
    (OPER 133 Mov [(r 86)]  [(i 99)])
    (OPER 134 Pass []  [(r 86)])
    (OPER 135 JSR []  [(s putchar)])
    (OPER 136 Mov [(r 87)]  [(m RetReg)])
    (OPER 137 Mov [(r 88)]  [(i 0)])
    (OPER 138 Pass []  [(r 88)])
    (OPER 139 JSR []  [(s putDigit)])
    (OPER 140 Mov [(r 89)]  [(m RetReg)])
    (OPER 141 Mov [(r 90)]  [(i 0)])
    (OPER 142 Pass []  [(r 90)])
    (OPER 143 JSR []  [(s putDigit)])
    (OPER 144 Mov [(r 91)]  [(m RetReg)])
    (OPER 145 Mov [(r 92)]  [(i 108)])
    (OPER 146 Pass []  [(r 92)])
    (OPER 147 JSR []  [(s putchar)])
    (OPER 148 Mov [(r 93)]  [(m RetReg)])
  )
  (BB 25
    (OPER 169 Mov [(r 104)]  [(i 10)])
    (OPER 170 Pass []  [(r 104)])
    (OPER 171 JSR []  [(s putchar)])
    (OPER 172 Mov [(r 105)]  [(m RetReg)])
    (OPER 173 Mov [(r 106)]  [(i 0)])
    (OPER 174 Mov [(m RetReg)]  [(r 106)])
    (OPER 175 Jmp []  [(bb 1)])
  )
  (BB 1
    (OPER 1 Func_Exit []  [])
    (OPER 2 Return []  [(m RetReg)])
  )
  (BB 5
    (OPER 12 Mov [(r 13)]  [(i 4)])
    (OPER 13 Store []  [(r 13)(s a)(i 0)])
    (OPER 14 Jmp []  [(bb 6)])
  )
  (BB 21
    (OPER 122 Mov [(r 80)]  [(i 3)])
    (OPER 123 Mov [(r 6)]  [(r 80)])
    (OPER 124 Jmp []  [(bb 22)])
  )
  (BB 18
    (OPER 118 Mov [(r 76)]  [(i 0)])
    (OPER 119 EQ [(r 75)]  [(r 5)(r 76)])
    (OPER 117 BEQ []  [(r 75)(i 0)(bb 21)])
  )
  (BB 20
    (OPER 120 Mov [(r 78)]  [(i 10)])
    (OPER 121 Mov [(r 6)]  [(r 78)])
  )
  (BB 22
    (OPER 125 Jmp []  [(bb 19)])
  )
  (BB 15
    (OPER 113 Mov [(r 72)]  [(i 0)])
    (OPER 114 EQ [(r 71)]  [(r 4)(r 72)])
    (OPER 112 BEQ []  [(r 71)(i 0)(bb 18)])
  )
  (BB 17
    (OPER 115 Mov [(r 74)]  [(i 2)])
    (OPER 116 Mov [(r 6)]  [(r 74)])
  )
  (BB 19
    (OPER 126 Jmp []  [(bb 16)])
  )
  (BB 12
    (OPER 127 Mov [(r 82)]  [(i 0)])
    (OPER 128 Mov [(r 6)]  [(r 82)])
    (OPER 129 Jmp []  [(bb 13)])
  )
  (BB 24
    (OPER 149 Mov [(r 95)]  [(i 98)])
    (OPER 150 Pass []  [(r 95)])
    (OPER 151 JSR []  [(s putchar)])
    (OPER 152 Mov [(r 96)]  [(m RetReg)])
    (OPER 153 Mov [(r 97)]  [(i 97)])
    (OPER 154 Pass []  [(r 97)])
    (OPER 155 JSR []  [(s putchar)])
    (OPER 156 Mov [(r 98)]  [(m RetReg)])
    (OPER 157 Mov [(r 99)]  [(i 100)])
    (OPER 158 Pass []  [(r 99)])
    (OPER 159 JSR []  [(s putchar)])
    (OPER 160 Mov [(r 100)]  [(m RetReg)])
    (OPER 161 Mov [(r 101)]  [(i 61)])
    (OPER 162 Pass []  [(r 101)])
    (OPER 163 JSR []  [(s putchar)])
    (OPER 164 Mov [(r 102)]  [(m RetReg)])
    (OPER 165 Pass []  [(r 6)])
    (OPER 166 JSR []  [(s printInt)])
    (OPER 167 Mov [(r 103)]  [(m RetReg)])
    (OPER 168 Jmp []  [(bb 25)])
  )
)
